﻿using System.Data;
namespace TeachlyQBank.DbPool
{
    public interface IDatabaseConnection : IDisposable
    {
        // 打开数据库连接
        void Open();

        // 关闭数据库连接
        void Close();

        // 执行一个查询并返回一个结果集，可选参数
        DataSet ExecuteQuery(string query, Dictionary<string, object>? parameters = null);

        // 执行一个非查询操作（如插入、更新或删除），并返回影响的行数，可选参数
        int ExecuteNonQuery(string query, Dictionary<string, object>?parameters = null);

        // 测试数据库连接是否正常
        bool TestConnection();

        
        string GetLastError();
    }
}
